package com.yilin.platform.service;

import com.yilin.platform.entity.aliPay.AliPayTradeRecord;
import org.springframework.transaction.annotation.Transactional;

import javax.servlet.http.HttpServletRequest;
import java.util.List;
import java.util.Map;

public interface IAliPayService {
    String generatorAliPayOrder(AliPayTradeRecord tradeRecord);

    AliPayTradeRecord queryAliPayOrder(String tradeNo);

    AliPayTradeRecord aliPayRefund(AliPayTradeRecord aliPayTradeRecord, AliPayTradeRecord aliPayTradeRecordOrging);

    AliPayTradeRecord aliPayRefundQuery(String tradeNo);


    String generatorAliPayOrderPcH5(AliPayTradeRecord aliPayTradeRecord, String requestFromURl);

    //支付宝支付回调 验签
    Map<String,Object> aliPayNotity(HttpServletRequest request, String userType,String payType);

    AliPayTradeRecord getAliPayTradeRecordById(String tradeRecordId);

    AliPayTradeRecord getAliPayTradeRecordByTradeNo(String tradeNo);

    List<AliPayTradeRecord> getNotificationList();

    //    定时函数单笔查询
    void myTaskOneMinute();

    AliPayTradeRecord getAliPayTradeRecordByRefundTradeNo(String tradeNo);
}
